#include "namedPipe.hpp"

int main()
{
    // read
    NamedPipe fifo(comm_path, Creater);
    //对于读端而言，如果我们打开文件，但是写端还没来
    //我会阻塞在open调用中，直到对方打开

    //进程同步
    if (fifo.OpenForRead())
    {
        std::cout<<"server open named pipe done"<<std::endl;
        
        sleep(3);
        while (true)
        {
            std::string message;
            int n = fifo.ReadNamedPipe(&message);
            if (n > 0)
            {
                std::cout << "client say> " << message << std::endl;
            }
            else if(n==0)
            {
                std::cout<<"client quit, server too!"<<std::endl;
                break;
            }
            else
            {
                std::cout<<"fifo.ReadNamedPipe Error"<<std::endl;
                break;
            }
        }
    }
        // CreateNamedPipe(comm_path);
        // sleep(5);
        // RemoveNamedPipe(comm_path);
        return 0;
}